上一篇學習了 Set
,今天要練習的 Map
也是 ES6 中提出的一種資料結構,跟 Set
蠻像的,只是 Map
存取的是鍵值對,所以也跟物件蠻像的,但有以下差別:
今天就來練習看看使用方式ㄅ!有些方法跟 Set
蠻類似的,在開始之前建議可以了解一下 Set
歐:
文章連結:陣列好兄弟 Set 怎麼用? - 以 30 天平民滷肉飯挑戰為例
以朋友名單為例,假如我們用 Map 紀錄我的好友們的特性:
const friends = new Map();
映萱是我的朋友:
const friends = new Map();
friends.set('映萱',80);
console.log(friends); // Map(1) {"映萱" => 80}
鍵值可以是任意型態,所以也可以這寫:
const friends = new Map();
friends.set({'姓名':'映萱','體重巔峰':80,'綽號':'兄兄'},'82/7/27');
想要知道映萱的體重,可以這樣寫:
const friends = new Map();
friends.set('映萱',80)
console.log(friends.get('映萱')); // 80
const friends = new Map();
friends.set('映萱',80)
friends.set('阿華',75)
console.log(friends.size); //2
看看好友名單有沒有映萱
console.log(friends.has('映萱')); // true
跟阿華絕交了:
friends.delete('阿華');
console.log(friends); // Map(1) {"映萱" => 80}
突然很負面,覺得我沒有真正的朋友:
friends.clear();
console.log(friends); // Map(0) {}
const friends = new Map([['映萱',80],['阿華',75]]);
friends.forEach(function(value,key){
console.log(`${key}的人生巔峰是${value}`);
//映萱的人生巔峰是80
//阿華的人生巔峰是75
});